const { pool, executeSql } = require("./db"); // 数据库连接池
const { queryOne, queryPage, insertOne, update, del, queryList } = require("./sqlUtils");
const TABLE_WHITE_LIST = ["user", "temp"]; // 白名单
exports.findUserList = async (options) => {
    const { page, pageSize } = options || {};
    const { success, data } = await queryPage(
        "temp", // 表名
        {
            fields: ["*"],
            where: {},
            order: {
                id: "ASC"
            },
            page,
            pageSize
        },
        TABLE_WHITE_LIST // 白名单
    );
    if (success) {
        return JSON.parse(data.list);
    }
    return null;
};

exports.login = async ({ openid, session_key }) => {
    const { success, data } = await queryOne(
        "user", // 表名
        ["*"], // 查询字段
        { openid }, // 条件
        TABLE_WHITE_LIST // 白名单
    );
    if (success) {
        if (data.length === 0) {
            await insertOne(
                "user", // 表名
                { session_key, openid }, // 新增数据
                TABLE_WHITE_LIST // 白名单
            );
        } else {
            await update(
                "user", // 表名
                {
                    session_key,
                    openid
                }, // 新增数据
                { openid },
                TABLE_WHITE_LIST // 白名单
            );
        }
    }
};
